home *** CD-ROM | disk | FTP | other *** search
/ Aminet 21 / Aminet 21 (1997)(GTI - Schatztruhe)[!][Oct 1997].iso / Aminet / util / rexx / LabelRexx.lha / label.rexx next >
OS/2 REXX Batch file  |  1997-07-30  |  4KB  |  187 lines

  1. /* WW6 Label Template Creator - by Rudy Kohut 1997 */
  2. options results
  3.  
  4. tm=0
  5. bm=0
  6. lm=0
  7. rm=0
  8. col=0
  9. num_labels=0
  10. ps=""
  11. munit=""
  12. pagewidth=0
  13. pagelength=0
  14.  
  15. WIZARDREQ TITLE "Label Sheet Layout" LABEL "Enter data needed to design label sheet",
  16. LABEL "Enter dimensions using your page default measurement units",
  17. LABEL "as set in your preferences (These appear on the ruler).",
  18. LABEL "NOTE: Odd things happen if you mix units of measurement!!",
  19. TEXTBOX 1 "Pagesize (A4 or USLetter):" TEXTBOX 2 "No. of Label Columns:",
  20. TEXTBOX 3 "TOP Page Margin:" TEXTBOX 4 "BOTTOM Page Margin:",
  21. TEXTBOX 5 "LEFT Page Margin:" TEXTBOX 6 "RIGHT Page Margin:",
  22. TEXTBOX 7 "Number of Labels in One Column:" TEXTBOX 8 "Measurement System (cm, mm or in):",
  23. BUTTON 1 "_OK" BUTTON "-1" "_CANCEL"
  24.  
  25. IF result = -1 then    exit
  26.  
  27. WIZARD_GETTEXTBOX 1
  28. ps=result
  29. WIZARD_GETTEXTBOX 2
  30. col=result
  31. WIZARD_GETTEXTBOX 3
  32. tm=result
  33. WIZARD_GETTEXTBOX 4
  34. bm=result
  35. WIZARD_GETTEXTBOX 5
  36. lm=result
  37. WIZARD_GETTEXTBOX 6
  38. rm=result
  39. WIZARD_GETTEXTBOX 7
  40. num_labels=result
  41. WIZARD_GETTEXTBOX 8
  42. munit=result
  43.  
  44. If UPPER(LEFT(ps,1))="U" then do
  45.     ps="USLetter"
  46.     pagewidth=8.5
  47.     pagelength=11
  48.     end
  49.  
  50. If UPPER(LEFT(ps,1))="A" then do
  51.     test=UPPER(LEFT(munit,1))
  52.     select
  53.         when test="M" then do
  54.         ps="A4"
  55.         pagewidth=210
  56.         pagelength=297
  57.         end
  58.         when test="C" then do
  59.         ps="A4"
  60.         pagewidth=21
  61.         pagelength=29.7
  62.         end
  63.     otherwise
  64.         ps="A4"
  65.         pagewidth=8.27
  66.         pagelength=11.71
  67.     end
  68. end
  69.  
  70. If UPPER(LEFT(ps,1))~="U" & UPPER(LEFT(ps,1))~="A" then do
  71.     REQUESTNOTIFY PROMPT "Sorry, page size not recognised!"
  72.     exit
  73. end
  74.  
  75. rw=0
  76. rh=0
  77. lw=0
  78. lh=0
  79.  
  80. rw=pagewidth-(rm+lm) /* usable width of the page */
  81. rh=pagelength-(bm+tm) /* usable length of the page */
  82. lw=rw/col /* label width */
  83. lh=rh/num_labels /* label height */
  84.  
  85. Select
  86. when UPPER(LEFT(munit,1))="I" then do
  87.     tflm=.05
  88.     tfrm=.05
  89.     tftm=.05
  90.     tfbm=.05
  91. end
  92. when UPPER(LEFT(munit,1))="C" then do
  93.     tftm=.3
  94.     tfbm=.3
  95.     tflm=.3
  96.     tfrm=.3
  97. end
  98. otherwise
  99.     tftm=3
  100.     tfbm=3
  101.     tflm=3
  102.     tfrm=3
  103. end
  104.  
  105. NEW PORTNAME WWLABEL
  106. ADDRESS WWLABEL
  107. DOCUMENT ps lm rm tm bm
  108.  
  109. WIZARDREQ TITLE "Label Style Data" LABEL "Enter Styles to Apply to Labels",
  110. TEXTBOX 1 "Fillcolour (default=TRANSPARENT):",
  111. TEXTBOX 2 "Borderstyle (default=SINGLELINE):",
  112. TEXTBOX 3 "Textflow (default=NONE):",
  113. TEXTBOX 4 "Borderthickness in pts (default=0):",
  114. TEXTBOX 5 "Bordercolour (default=Black):",
  115. BUTTON 1 "_OK"
  116.  
  117. WIZARD_GETTEXTBOX 1
  118. fill=result
  119. if fill="" then
  120.     fill="Transparent"
  121.  
  122. WIZARD_GETTEXTBOX 2
  123. bstyle=result
  124. if bstyle="" then bstyle="Single Line"
  125.  
  126. WIZARD_GETTEXTBOX 3
  127. tflow=result
  128. if tflow="" then tflow="None"
  129.  
  130. WIZARD_GETTEXTBOX 4
  131. bthick=result
  132. if bthick="" then bthick="0pt"
  133. else bthick=bthick||"pt"
  134.  
  135. WIZARD_GETTEXTBOX 5
  136. bcolour=result
  137. if bcolour="" then 
  138.     bcolour="Black"
  139.  
  140. a=0
  141. b=0
  142.  
  143. DO i = 1 to col
  144.     a = lm+(lw*(i-1))
  145.     b = tm
  146.     DO j = 1 to num_labels
  147.         DRAWTEXTFRAME 1 a b lw lh tflm tfrm tftm tfbm fill bthick bcolour bstyle tflow
  148.         objectid.i.j=result
  149.         b = b+lh
  150.     end
  151. end
  152.  
  153. WIZARDREQ TITLE "Label Merge Text" LABEL "Enter mail merge text eg. «Name»",
  154. LABEL "Note: use ALT+9 keys for « and ALT+0 keys for »",
  155. LABEL "Not all boxes need be filled in!",
  156. LABEL "The «:NEXT» command is automatically appended.",
  157. TEXTBOX 1 "Text 1:" TEXTBOX 2 "Text 2:" TEXTBOX 3 "Text 3:" TEXTBOX 4 "Text 4:" TEXTBOX 5 "Text 5:",
  158. BUTTON 1 "_OK" BUTTON "-1" "_CANCEL AND SAVE" BUTTON 2 "_QUIT"
  159. if result=-1 then do
  160.     SAVEAS
  161.     exit
  162. end
  163. if result=2 then exit
  164.  
  165. wtext.=""
  166.  
  167. DO n= 1 to 5
  168.     WIZARD_GETTEXTBOX n
  169.     wtext.n=result
  170. end
  171.  
  172. wtext.6="«:NEXT»"
  173.  
  174. DO i = 1 to col
  175.     DO j = 1 to num_labels
  176.         ACTIVATETEXTFRAME objectid.i.j
  177.         DO n= 1 to 6
  178.             if wtext.n="" then iterate
  179.             TEXT wtext.n
  180.             NEWPARAGRAPH
  181.         end
  182.     end
  183. end
  184.  
  185. SAVEAS
  186. REQUESTNOTIFY PROMPT "Label Sheet Maker Finished!!"
  187. exit